home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
icon
/
packages.lha
/
packages
/
atari
/
ats.arc
/
TESTS.ARC
/
RECOGN.ICN
< prev
next >
Wrap
Text File
|
1990-03-28
|
600b
|
29 lines
#
# C F L R E C O G N I T I O N
#
# This program takes strings from standard input and determines
# whether or not they are sentences in the language defined by <s>.
procedure main()
local line
while line := read() do
if recogn(s,line) then write("accepted") else write("rejected")
end
procedure recogn(goal,text)
return text ? (goal() & pos(0))
end
# <s> ::= a <s> | <t> b | c
procedure s()
suspend (="a" || s()) | (t() || ="b") | ="c"
end
# <t> ::= d <s> d | e | f
procedure t()
suspend (="d" || s() || ="d") | ="e" | ="f"
end